<?php

/**
 * Application level Controller
 *
 * This file is application-wide controller file. You can put all
 * application-wide controller-related methods here.
 *
 * PHP 5
 *
 * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 * @link          http://cakephp.org CakePHP(tm) Project
 * @package       app.Controller
 * @since         CakePHP(tm) v 0.2.9
 * @license       MIT License (http://www.opensource.org/licenses/mit-license.php)
 */
App::uses('Controller', 'Controller');

/**
 * Application Controller
 *
 * Add your application-wide methods in the class below, your controllers
 * will inherit them.
 *
 * @package		app.Controller
 * @link		http://book.cakephp.org/2.0/en/controllers.html#the-app-controller
 */
class AppController extends Controller {

    public $components = array(
        'Session',
        'Auth' => array(
            'loginAction' => array('controller' => 'users', 'action' => 'login', 'admin' => true),
            'loginRedirect' => array(
                'controller' => 'contents', 'action' => 'index'),
            'logoutRedirect' => array(
                'controller' => 'contents',
                'action' => 'index'),
            'authorize' => array('controller'),
            'authenticate' => array(
                'Form' => array(
                    'fields' => array('username' => 'email')
                )
            )
        ),
        'RequestHandler');

    public function beforeFilter() {


        $this->Auth->allow('content', 'index', 'login', 'usermenu', 'mainmenu', 'images', 'add', 'admin_login');


        //letiltott oldalaka amik ne legyenek elérhetőek
        $this->Auth->deny('register', '');

        /* if($this->Auth->user('role') == 'admin'){
          $this->Auth->logoutRedirect = array('controller'=>'login','action'=>'index');
          $this->Auth->loginRedirect = array('controller' => 'login', 'action' => 'index');
          } */

        $this->layout = 'lakasmesterek_layout';
        if (isset($this->params['admin'])) {
            $this->layout = 'admin';
        } else {
            //$this->layout = 'gray';
        }
        //$this->Auth->logoutRedirect = array('controller'=>'contents','action'=>'content','admin'=>true);
        //$this->Auth->allow();
        //$this->Auth->deny('admin_add','admin_index','admin_edit','admin_delete');
        /*  if ($this->Auth->user('role') == 'admin') {

          $this->Auth->allow('admin_index', 'admin_add', 'admin_edit', 'admin_delete');
          } elseif ($this->Auth->user('role') == 'user') {
          $this->Auth->allow('content'); //Note difference in superadmin priviledges
          }
         */
        //$this->Auth->allow('index', 'view');
    }

    public function isAuthorized($user) {
        if (isset($user['Role']['role']) && $user['Role']['role'] === 'Admin') {
            //echo 'Adminisztrátor';
            return true;
        }
        return false;
    }

}
